package com.jms.framework.beans.exception;

/**
 * BeansException类是框架中自定义的运行时异常类。
 * 它继承自RuntimeException，因此它是非检查型异常，不需要在方法签名中显式声明。
 * 这个异常类主要用于在框架内部处理与Beans相关的异常情况，比如Bean的创建、处理过程中的错误。
 *
 * @author JMS
 * @since 20250123
 * @version 1.0.0
 */
public class BeansException extends RuntimeException {
    /**
     * 默认构造函数。
     * 使用父类的默认构造函数初始化异常对象。
     */
    public BeansException() {
        super();
    }

    /**
     * 带有错误消息的构造函数。
     * 使用指定的错误消息构造异常对象。
     *
     * @param message 错误消息，描述异常情况的信息。
     */
    public BeansException(String message) {
        super(message);
    }

    /**
     * 带有错误消息和原因的构造函数。
     * 使用指定的错误消息和底层原因构造异常对象。
     *
     * @param message 错误消息，描述异常情况的信息。
     * @param cause   异常的原因，通常是一个底层异常。
     */
    public BeansException(String message, Throwable cause) {
        super(message, cause);
    }

    /**
     * 仅带有原因的构造函数。
     * 使用指定的底层原因构造异常对象。
     *
     * @param cause 异常的原因，通常是一个底层异常。
     */
    public BeansException(Throwable cause) {
        super(cause);
    }
}
